//
// Copyright (c) 2009-2011, chunquedong
//
// This file is part of ChunMap project
// Licensed under the GNU LESSER GENERAL PUBLIC LICENSE(Version >=3)
//
// History:
//   2011-05-03  Jed Young  Creation
//

using chunmapModel

**
** Feature represents a record of dataset. It's a super inteface of Shape and Raster
**
@Js
mixin Feature
{
  abstract Envelope envelope()
  abstract Obj? id()
}

**
** Metadata
**
@Js
const class Metadata
{
  const Str name
  const GeometryType type
  const CoordRef crs

  new make(|This| f) { f(this) }

  Metadata defVal()
  {
    Metadata
    {
      it.name = "unknown"
      it.type = GeometryType.none
      it.crs = CoordRef.defVal
    }
  }
}